perm filename MSS.MAN[MAN,LCS]6 blob sn#103195 filedate 1974-05-21 generic text, type T, neo UTF8
00100	******** MUMSS: DISPLAYS MUSIC AND DRAWS IT ON THE PLOTTER *******
00200	
00300	TO RUN: SEE FILE "CMD[1,LCS]" FOR 'DO' FILES.
00400			(BEST IS TO 'DO DOMS.DO' WHILE ALIASED TO [MSS,LCS].
00500			FOR THE PROGRAM TO RUN IT MUST PICK UP SOME SPECIAL
00600			DATA IN THAT AREA.)
00700	
00800	******* KEY TO THE PARAMETER NUMBERS *******
00900	
01000		SEE SECTION ON 'SCORE' INPUT FOR FIRST STEPS IN INPUT.
01100		THE FOLLOWING CODE NUMBERS ARE USED MAINLY FOR EDITING.
01200	
01300	--------  SECTION I  ---------
01400	
01500	1 NOTES: 1, POS, STF, NT NUM, 
01600		(P5) STEM DIR & ACCI,
01700		(P6) FILLED IN? (≥0), DECIS REFER TO ACCENTS, ETC.
01800		(P7)NUM OF TAILS(0,1=8TH,4=64TH, ETC.)
01900				(IF 2 DIGITS, LFT IS NUM OF DOTS.)
02000		(P8)STEM EXT. BY NT NUM,
02100		(P9)=1 TO SUPPRESS LEDGER LINES.
02200		(P10)=1 PUTS SLASH ON GRACE-NOTE TAIL (.01 IN P7=SAME)
02300	    P4 100S GIVE MINIS, 200S GIVE DIAMOND SHAPE (HARMONICS)
02400				300S GIVE 'X' NOTES (FOR PERCUSSION, ETC.)
02500	    FOR P5: <10= NO STEM, 10-13=STEM UP, 20-23= STEM DOWN
02600		1,11 OR 21=FLAT; 2,12,22=#; 3,13,23=NATURAL
02700	    FOR P6: POS NUM OR 0 = BLACK NOTE, ANY NEG NUM = WHITE NOTE.
02800	    FOR P6: 10,-10 'HOMES' TO RIGHT OF UPWARD STEM.
02900		     20,-20 'HOMES' TO LEFT OF DOWNWARD STEM.
03000	 	30,-30(FOR 0,-1) PUTS DOTS IN PROPER PLACE IN COMPLEX CHORDS.
03100	      IF P7 HAS 2 DIGITS THE NOTE IS DOTTED; 2ND DIG. IS NUM OF TAILS.
03200		DECIMALS AFTER P5 OR P7 SPACE OUT ACCIDENTAL OR DOT.
03300			.01 IN P7 PUTS SLASH THROUGH TAIL (SAME AS P10).
03400		DECIMALS AFTER P6 ARE ACCENT NUMS (.4-.7,.9 ETC. SEE CODE #6)
03500				UP TO 2 ACCENTS CAN BE PUT IN THIS WAY.
03600	
03700	2 RESTS: 2,POS,STF,HGT,REST(-2=WHOLE, 0=1/4, 1=1/8,ETC),P6) 1=DOTTED
03800	
03900	3 CLEFS:  3, POS, STAFF, P4=HGT CHANGE(TO MAKE SOP. ETC.),P5=CLEF NUM
04000		(CLEF NUMS ARE: TREB=1, BASS=2, ALTO=3, TENOR=4
04100		 ADD 100 FOR MINICLEFS.)  (P6-P8 AS IN CODE 11.)
04200	
04300	4 LINES: 4,POS,LOWEST STF,
04400		(P4) NUM OF STAVES UP FOR BAR LINE - IF ALL HIGHER 
04500			PARAMETERS = 0, OR HGT1 (i.e.VERT. POS1 IF LINE).
04600		   FOR HEAVY BAR LINES ADD 100*THICKNESS TO NUMBER IN P4
04700		   (BAR LINES DON'T AFFECT TOP AND BOT MAXI'S.)
04800		(P5) HGT2,   IF P5=50, A +N IN P7=CRESC., -=DECRESC.
04900				OR, IF P8.NE.0, BOX APPEARS OF SIZE
05000				P8=X (BY HORIZ. NUMS) AND P9=Y (BY NOTE NUMS).
05100		(P6) POS2, 	
05200		(P7) 1=DASHES    IF P5=50 +N IN P7=CRESC., -=DECRESC.
05300				 IF P6=P2, MAKES VERTICAL DASHED LINE.
05400		     -1 GIVES VERTICAL WAVEY LINE..P6 MUST=0 
05500					P8 CAN CHANGE WIGGLE WIDTH.
05600		     -2 GIVES HORIZ.WAVEY LINE(P5 GIVES HGT OF WAVE BY NT NUM)
05700				....P6=RIGHT END POINT OF WIGGLE.
05800		(P8) NON-ZERO GIVES HORIZ. BOX SIZE, IF P5=50
05900			IF VERT. DASHES, P8 SETS SIZE.
06000		(P9) GIVES VERT. BOX SIZE, IF P5=50
06100	
06200	5 NUMBERS:  5, POS, STF, NT NUM, SIZE FACTOR, NUM
06300	
06400	6 ACCIDS, ACCENTS, ETC.: 6, POS, STF, NOTE NUM, P5, P6
06500		FOR P5: b=1, #=2, NAT=3, WEDGE ACCENT ∧=4(-4=INV), ACCENT >=5,
06600		FERMATA=6 or 26(-6=INV), STAC. OR DOT=7, REPEAT BAR SIGN=8,
06700			TENUTO OR DASH=9, DNBOW=11, UPBOW=12, HARM,=13, +=14,
06800			THESIS=15, ARSIS=16
06900	   ***** 2 ITEMS MAY BE ENTERED AT ONCE WITH P5. e.g. 47 WILL CREATE
07000		A WEDGE(4) WITH A DOT(7) BELOW IT; 79 MAKES A DOT(7) WITH A
07100		DASH(9) BELOW IT. IF ANY OF THE 2-DIGIT CODES ARE USED, THEY
07200		MUST! COME FIRST.   e.g. 135  MAKES  A  HARMONIC(13) WITH AN
07300		ACCENT(5) BELOW.  ETC.	(513 WILL NOT WORK!)
07400	
07500		 SET P6 TO 1 FOR AUTOMATIC HOMING.
07600		 (OR P13.  SEE HOMING INFO IN EDIT SECTION.)
07700	
07800	7 KEY SIG.: 7,POS,STF,NUM OF SHARPS OR FLATS (+=#, -=b),HGT.
07900	
08000	8 SLURS: 8, POS1, STAFF, NT1, NT2, POS2, P7=DIP(NT UNITS + OR -), P8
08100		FOR P8 0=SLUR, 1=BRACKET, 2=LFT 1/2 BRKT, 3=RT 1/2 BRKT,
08200		FOR AUTOMATIC ALIGNMENT OF SLUR WITH NOTES, SET P13=1, THEN
08300		IF P8=-1, END POINTS WILL HOME TO NOTE CENTERS.
08400		IF P8=-2, END POINTS WILL HOME BETWEEN NOTES.
08500		USE P8=-3 TO HOME BETWEEN NOTES WHERE 1ST IS DOTTED.
08600	
08700	9 BEAMS: 9, POS, STF, NT1, NT2, POS2, 
08800			FOR "MINI" BEAMS ADD 100 TO P4 (-100 FOR NEG. NUMS.)
08900		 (P7)  STEM DIR(10=↑ 20=↓), 
09000	 	  --  2ND DIG. IN P7=TOTAL NUM OF BEAMS.
09100		 (P8)  10=LFT,  20=RT.
09200		       -10,-20=UNATTACHED PARTIAL BEAMS
09300			 A 2ND DIGIT=DISPLACEMENT NUMBER.
09400			-- IF P10 HAS 30+, P8 WILL HAVE POS3 AND
09500			-- P9 WILL HAVE POS4.
09600		 (P9)  POS3. (OR POS4 IF P10>30.)
09700		 (P10) = NUM OF BEAMS DISPLACED (NO MORE THAN 9.)
09800		  ADD 10 FOR INNER SHORT PARTIAL →
09900		  ADD 20 FOR INNER SHORT PARTIAL ←
10000		  ADD 30 FOR INNER PARTIAL BETWEEN TWO STEMS.
10100		      P11 CAN RESET HOMING RANGE (OR -1 = NONE.)
10200	
10300	10 FOR STAFF LINES: 10,POS1, HGT(3 TO -3), 2ND POS.,
10400		P5) DISPLACEMENT(BY NOTE NUM),
10500		P6) SIZE FACTOR(DECIMAL)(ALSO SEE '88' BELOW.)
10600	
10700		10, 0, STF NUM  WILL GIVE FULL LENGTH STAFF
10800	
10900	11 LIBRARY ITEMS: 11, POS, STAFF, NOTE NUM, P5)ITEM NUM, 
11000		   P6)HORZ. SZ., P7)VERT. SZ.,   P8,  P9,  P10
11100			P8=-1 FOR FILL ON CRT, =-2 FOR NO FILL ANYWHERE.
11200	
11300		P5 MAY HAVE NUMBERS 0 THROUGH 99.  NUMBERS 0-9 REFER TO
11400		THE "BASIC" DRAW FILE.  (SEE 'DRAW.MAN' FOR PREPERATION
11500		OF 'DRAW' FILES.)  THE "BASIC" FILE SHOULD HAVE A NAME
11600		WITH 4 LETTERS AND THE NUMBER 0 ON THE END.  IF THE "BASIC"
11700		NAME IS 'CHAR0' THEN NUMBERS 10 THROUGH 19 WOULD REFER
11800		TO 'CHAR1'; 20-29 TO 'CHAR2', 30-39 TO 'CHAR3', ETC.
11900	
12000		P9 = CLOCKWISE ROTATATION BY DEGREES.
12100		
12200		IF P10 IS SET TO 1 A "BASIC" FILE NAME WILL BE REQUESTED.
12300		THE NAME WILL BE STORED IN P10. ANY TIME P10 IS SET TO 1
12400		THE NAME WILL BE RE-REQUESTED.  ANY TIME P10 IS IGNORED THE
12500		LAST NAME GIVEN WILL BE PUT INTO P10.
12600		THUS SEVERAL ITEMS CAN USE DIFFERENT "BASIC" NAMES.
12700	
12800	12 CIRCLES AND ARCS: 12, POS, STF, NT NUM, 
12900			P5=RADIUS(BY HORIZ. SCALE NUMS)
13000			P6=DEGR.1, P7=DEGR.2; ZEROS GIVE COMPLETE CIRCLE.
13100	
13200	14  "SCORE" INPUT: 14, 0, STAFF   -- SEE SECTION BELOW.
13300	
13400	16 LETTERS, WORDS, ETC.:
13500	   16, POS, STAFF, NOTE NUM, SIZE FACTOR, P6
13600		----- THEN TYPE TEXT ----- 
13700	
13800	0-9, A-Z, and = . - , * ( ) " ; : + CAN BE USED.
13900	
14000	UP TO 12 CHARACTERS CAN BE PACKED IN AN ITEM.
14100	STRINGS OF MORE THAN 12 CHARACTERS WILL BECOME SEVERAL ITEMS FOR
14200	EDITING PURPOSES.  
14300	TO PLACE ITEMS IN RELATION TO ALREADY PRESENT NOTES, SET P6≠0.  
14400	SEPARATE EACH ITEM BY SLASHES.
14500	THE SLASHES WILL NOT BE DRAWN. (A LINE ENDED WITH * WILL PRINT *.)
14600	
14700	WHEN  P6≠0,  NUMBERS WILL APPEAR OVER THE NOTES OF THAT STAFF AND YOU
14800	WILL BE ASKED TO TYPE POSITION NUMBERS FOR EACH ITEM.    IF  P4  (THE
14900	VERTICAL  POSITION)  IS  SET  TO 0 YOU SHOULD TYPE 2 NUMBERS FOR EACH
15000	ITEM.  SEPARATE THE PAIRS OF NUMBERS BY SLASHES.  THE FIRST NUMBER OF
15100	A  PAIR  WILL  BE HORIZANTAL POS., THE SECOND WILL BE VERT. POS.  THE
15200	HORIZANTAL NUMBERS WILL BE IN TERMS OF THE NUMBERS  OVER  THE  NOTES.
15300	THUS  1.5,-3/  WOULD  PUT  ITEM 1 EXACTLY HALF WAY BETWEEN NOTE 1 AND
15400	NOTE 2 AND AT  THE  VERTICAL  POSITION  OF  NOTE  LEVEL  -3.     WITH
15500	1.5,-3/.7,13/  THE FIRST ITEM WOULD BE AS BEFORE AND THE SECOND WOULD
15600	BE AT .7 OF THE DISTANCE FROM THE BEGINNING OF THE LINE AND THE FIRST
15700	NOTE AND AT THE VERTICAL POSITION 13.
15800	
15900	IF  P4 IS ANY NON-ZERO NUMBER (AND P6≠0) ALL ITEMS WILL BE PUT AT THE
16000	LEVEL INDICATED IN P4.  IN  THIS  CASE  TYPE  ONLY  ONE  NUMBER  (FOR
16100	HORIZANTAL  POSITION) PER ITEM.  THIS IS PROBABLY THE BEST WAY TO PUT
16200	IN THE TEXT OF VOCAL LINES.
16300	
16400	CURRENTLY (5/74) THREE TYPE FONTS ARE AVAILABLE.  THE DEFAULT FONT IS
16500	CALLED  'PRIMITIVE'.   ALSO  THERE  IS  'BDR40' AND 'BDI40'(ITALICS).
16600	THESE LAST TWO INCLUDE UPPER AND LOWER CASE.  ****** NOTE THAT IF THE
16700	TYPE  FONTS  ARE  TO  BE  MIXED  THE  FIRST ENTRY MUST INCLUDE A FONT
16800	CONTROL CHARACTER EVEN IF IT IS THE DEFAULT FONT.
16900	
17000		FONT CONTROL CHARACTERS:
17100			# = PRIMITIVE  (52)
17200			$ = UPPER CASE (48)
17300			% = LOWER CASE (49)
17400			& = BDR40 (NON-ITALICS) (50)
17500			@ = BDI40 (ITALICS)  (51)
17600			< = OUTLINE ONLY  (53)
17700			> = FILLED   (54) (WILL NEVER FILL ON CRT HOWEVER.)
17800	
17900		WHEN INITIALLY USING THE TWO 'BD' FONTS THE UPPER-LOWER
18000		CASE CHARACTER MUST APPEAR AS WELL AS THE FONT CHARACTER.
18100		LATER FONT OR CASE CHANGES MAY APPEAR SINGLY.
18200	
18300	EXAMPLES:  TO GET THE FOLLOWING IN NON-ITALICS -
18400	
18500			Clarinet
18600	
18700	TYPE - $&C%LARINET/
18800	
18900		FOR THE NEXT WITH THE 2ND WORD ITALICS, THE 3RD PRIMITIVE-
19000	
19100	TYPE - $&O%BOE/@CRESC./#V.S./
19200	
19300		$&<O%BOE/  WOULD PRINT "Oboe" in non-filled letters.
19400	
19500	MOST OF THESE COMMANDS ARE SEMI-STICKY.  TO BE SAFE THEY SHOULD BE
19600	RESET EACH TIME USED.
19700	
19800	WHEN LETTERS ARE EDITED THEY APPEAR UNDER CODE #16.  
19900	AT  EDIT  TIME  P13=1  WILL  CAUSE  HOMING  TO  A NEARBY NOTE.  NOW A
20000	NEGATIVE SIZE FACTOR (IN P5) WILL INVERT THE TEXT.  IF THE STAFF SIZE
20100	IS  LATER  CHANGED  THE  SPACING CONTINUITY OF STRINGS LONGER THAN 12
20200	LETTERS WILL  BE  DISTURBED.   TO  CORRECT  THIS  SET  P9=1  FOR  THE
20300	MISPLACED  UNIT  OF  TEXT.   IT  WILL  THEN  AUTOMATICALLY RESUME THE
20400	CORRECT POSITION AND RESET P9 TO 0.
20500	
20600	18 METER:  18, POS, STF, TOP NUM, BOTT NUM, HGT, SIZE FACTOR
20700	
20800	19 ADJUST STEMS TO MEET BEAMS: 19, STAFF NUM (99=ALL STAVES)
20900				  (ALSO REMOVES TAILS WHERE NEEDED)
21000	
21100	19 N1 N2 ------ IF 2 NUMBERS FOLLOW 19 THE 1ST  SHOULD  BE  THE  ITEM
21200	NUMBER  OF  A  BEAM AND THE 2ND THE ITEM NUMBER OF A NOTE.  THIS WILL
21300	CAUSE THE BEAM TO HOME TO ANY NOTE ON A DIFFERENT STAFF.
21400		BEFORE  USING THIS, CERTAIN REQUIREMENTS MUST BE MET.  P2 AND
21500	P6 SHOULD BOTH BE SET TO THE HORIZANTAL POSITION OF THE ORIGIN OF THE
21600	BEAM  (I.E.  USUALLY  P2).   P4  AND  P5  SHOULD  BE SET THE VERTICAL
21700	POSITION OF THE ORIGIN (USUALLY P4).  P7  SHOULD  INDICATE  THE  STEM
21800	DIRECTION  OF  THE NOTE AT THE ORIGIN POINT.  P11 IS BEST SET TO 1 TO
21900	INHIBIT  OTHER  HOMING  FEATURES.  IF  THE  BEAM  IS  COMPOSITE, THIS
22000	PROCEDURE MUST BE FOLLOWED FOR EACH BEAM ITEM INVOLVED.
22100		THE NOTE ON THE OTHER STAFF MAY HAVE A STEM OF ANY LENGTH AND
22200	IT MAY BE IN FRONT OF OR BEHIND THE ORIGIN POINT OF THE BEAM.  IT  IS
22300	PROBABLY  BEST TO USE THIS FEATURE ONLY AFTER! THE OTHER '19' FEATURE
22400	HAS BEEN USED.  CHECK STEM LENGTHS AND MEETING POINTS CAREFULLY AFTER
22500	USE.
22600	
22700	
22800	
22900	20 TRILLS: 20, POS1, STF, NOTE NUM, 0, POS2, P7
23000			IF P7=1, NO WAVEY LINE APPEARS.
23100	
23200	24 MAGNIFY AREA:  24,SIZE FACTOR, NEW CENTER X,Y
23300						(USE -512 TO 512 RANGE)
23400	30 TREMOLO:  30, POS, STF, NT NUM, STEM DIR(10↑,20↓), NUM OF BEAMS.
23500			IF P5=11 OR 21 BEAMS WILL BE LEVEL INSTEAD OF TILTED.
23600	
23700	33 PARAMETER CONTENTS:  33  N.  TO SEE EXACT CURRENT CONTENTS
23800			OF PARAMETER NUM. N WHILE IN EDIT MODE.
23900	
24000	88 SIZE FACTOR:  88, FACTOR, STAFF NUM  (USE ONLY ONCE PER STAFF NUM.
24100				AND ONLY WHEN NO STAFF LINES ARE USED.
24200				THIS MUST PRECEDE OTHER INPUT ON STAFF!
24300	
24400	101  SPACING SCALE: 101, STAFF NUM  (101,99 ERASES IT)
24500	
24600	333 N1,N2,N3  PRINTS RN ARRAY FROM ITEM N1 TO ITEM N2. N3=1 FOR LPT.
24700		(USING LPT IS FATAL FOR CURRENT DPY AND MUST BE FOLLOWED BY
24800		<CALL>, F<CR> IN ORDER TO RELEASE THE LPT.)
24900	
     

00100	--------  SECTION II  -----------
00200	
00300	***********  LETTER COMMANDS  ***************
00400	
00500	'G' = GET OLD DATA TO WORK ON.
00600	
00700		IF YOU GET THE MESSAGE "UNPACK IT" USE THE MSSAUX PROGRAM.
00800	
00900	'GM' = GET MORE TO ADD TO CURRENT DISPLAY
01000	
01100	'PXC'  PLOTS MUSIC ON THE CALCOMP PLOTTER.
01200	
01300	        BEFORE PLOTTING, MSS RUNS THROUGH ALL DATA TO RESET 'TOP' AND
01400	  	'BOTTOM' SO THAT THE VERTICAL SPACING BETWEEN SECTIONS WILL BE
01500		CORRECT.
01600	
01700		IF THE PAGE IS IN MORE THAN ONE SECTION ALWAYS START WITH THE
01800	BOTTOM  SECTION FIRST.  YOU WILL BE ASKED FOR FILE NAMES.  WHEN THERE
01900	ARE NO MORE TO BE GIVEN TYPE <CR>.  
02000		IF THE FILE NAMES FORM A SERIES OF 5 LETTER NAMES ENDING WITH
02100	CONSECUTIVE  LETTERS  OF  THE  ALPHABET,  YOU  MAY TYPE THE LAST NAME
02200	FOLLOWED BY THE TOTAL NUMBER OF FILES THAT ARE TO BE PRINTED ON  THAT
02300	SINGLE PAGE.  THE FILES WILL BE FOUND IN THE PROPER SEQUENCE.
02400	FOR EXAMPLE, 'TRC4D 4' WILL PRINT FILES TRC4D THROUGH TRC4A.
02500	A SIZE FACTOR OF 1 CREATES THE CORRECT WIDTH FOR 8 1/2" PAPER.
02600	
02700	'PXGP'  PLOTS MUSIC ON THE XEROX XGP.
02800	
02900		BEFORE USING 'PXGP' TYPE 'CTRL C' AND 'A DSK PTP'.  THIS WILL
03000	CAUSE  THE  PLOTTER COMMANDS TO BE WRITTEN ON THE DSK IN A FILE NAMED
03100	'PLOT.BIN'.  FOLLOW THE GENERAL RULES FOR 'PXC' ABOVE.   HOWEVER  THE
03200	SIZE  FACTOR  CANNOT  EXCEED  1.1  AND  FIT  THE PAPER.  WHEN THE MSS
03300	PROGRAM HAS FINISHED TYPE 'R X'.  FOR X AND Y POSITIONS TYPE <CR> AND
03400	FOR  PAPER  LENGTH TYPE '11'.  BE SURE TO DELETE THE PLOT.BIN FILE AS
03500	IT WILL BE VERY LARGE.
03600	
03700	
03800	---- FOLLOWING ARE OLD PLOT COMMANDS ----
03900	'P' N1, N2, N3, N4, N5, N6 = PLOT DISPLAY
04000		 N1=WIDTH FAC., 
04100		 N2=HEIGHT FAC.
04200	         N3=1, PLOTS ONLY THIN LINES. N3=2, PLOTS ALL BUT THIN LINES.
04300		 N4=1  NO MOVE AT START 
04400		 N5=1  NO MOVE AT END.
04500		 N6= MOVE UP 'N' STAVES AT END.
04600	
04700	'RS' = RESTART.  CLEARS BUFFERS AND SCREEN - NO RECOVERY POSSIBLE!
04800	
04900	
05000	SAVE ALL: TYPE 'SAVE'  ('SD'  SAVES DISPLAY ONLY FOR DPY.F4)
05100	
05200		IF 'SAME' IS GIVEN AS A FILE NAME THE NAME WILL BE 
05300		SAME AS PREVIOUSLY.
05400	
05500	  'SB' = SAVE BIG.  SAVES ALL IMPORTANT BUFFERS. FOR QUICKER READIN.
05600	  'SM' = 'SB' WITH THE SAME NAME AS PREVIOUSLY.
05700	  'SF' = FIXUP AND SAVE - REPAIRS TANGLES IN PROGRAM INTERIOR.
05800	
05900	   TYPE '99' TO BACK UP FROM FILE NAME REQUEST.
06000	
06100	
06200	************************************************************************
06300	
     

00100	--------  SECTION III  -----------
00200	
00300	******  VARIOUS WAYS TO GET INTO EDIT MODE  ********
00400	
00500	
00600	   TO MOVE LAST ITEM ENTERED LFT-RT OR UP-DOWN:
00700		'L', 'R', 'U' OR 'D' + NUM OF STEPS TO LFT-RT 
00800			(NOTHING ELSE REQUIRED)
00900	
01000	
01100	'EDIT', POS, STAFF, (CODE NUM) ----- TO USE LIGHT PEN: TYPE 'EDIT' <CR>
01200	
01300	A VERTICAL LINE WILL APPEAR AT  THE  POSITION  GIVEN  AND  ALL  ITEMS
01400	WITHIN  5  SPACES OF THE LINE ON THAT STAFF WILL COME UP FOR EDITING.
01500	TO PASS OVER AN ITEM TYPE <CR>.  SEE BELOW FOR METHOD OF CHANGING THE
01600	VARIOUS PARAMETERS.
01700	
01800	IF THE STAFF NUMBER IS GREATER THAN 4, ITEMS ON  ALL  STAVES  MAY  BE
01900	EDITED.
02000	
02100	IF A CODE NUMBER IS GIVEN, THE ITEM NEAREST THE LINE WITH THAT NUMBER
02200	WILL COME UP.  FOLLOWING, ALL OTHER ITEMS OF THAT NUMBER ON THAT LINE
02300	WILL COME UP.
02400	
02500		  WITH THE LIGHT PEN, MOVE CURSOR TO THE ITEM TO BE
02600		  EDITED.  TYPE <CR> AND ITEMS ON ALL STAVES NEAR THAT POINT
02700		  WILL COME UP FOR EDITING IN ORDER. (USES SAME MODE
02800		  AS ABOVE.)
02900	
03000	S(ET) AND A(LIGN) ---------
03100	
03200	IF YOU TYPE 'S' WHILE IN THE ABOVE  FORM  OF  EDIT  MODE  ('ED')  THE
03300	VERTICAL  LINE  WILL  JUMP  TO THE POSITION OF THE CURRENT ITEM UNDER
03400	CONSIDERATION. TYPE <CR> TO PROCEED TO OTHER ITEMS.   AT  THIS  POINT
03500	TYPING 'A' WILL  AUTOMATICALLY ALIGN THE CURRENT ITEM TO THE POSITION
03600	OF THE ITEM AT 'SET'.  TYPE 'X' TO EXIT FROM ANY EDIT MODE.
03700	
03800	'L'=LIGHT PEN --- THIS MAY BE USED IN ANY FORM OF EDIT MODE.  MOVE
03900			THE CURSOR TO THE LOCATION DESIRED FOR THE ITEM.
04000			<CR> WILL MOVE THE ITEM.  NOTE THAT HORIZANTAL
04100			MOVEMENT IS FREE BUT VERTICAL MOVEMENT IS BY STAFF
04200			NUMBERS.  ALL DETAILS OF VERTICAL MOVEMENT MUST BE
04300			TYPED IN.
04400	
04500	
04600	  'I' N = EDIT ITEM NUMBER N
04700			THIS MAY BE TYPED AT ANY TIME WHILE IN EDIT MODE.
04800			THE ITEM INDICATED WILL NEXT COME UP.
04900	  'ST' STAFF NUM, CODE NUM--EDITS ONLY ITEMS OF THAT CODE NUM ON
05000	           THAT STAFF.   IF CODE=0, THEN ALL ITEMS WILL COME UP.
05100	
05200	
05300	***********  HOW TO CHANGE PARAMETERS  ****************
05400	
05500	
05600	  IN EDIT MODE: 'L','R','U', OR 'D' FOLLOWED BY N, MOVES N SPACES TO
05700	    LEFT, RIGHT, UP OR DOWN.  2 DIRS. MAY BE GIVEN AT ONCE.
05800	
05900			****-- OR --****
06000	
06100	  PN1,N1  PN2,N2  PN3,N3  ETC. (TYPE PAIRS OF NUMS TO CHNG PARAMS)
06200			 <CR> ENDS EDIT AND MOVES TO NEXT ITEM FOR EDIT
06300			 'X' ENDS EDIT, EXITS TO INPUT MODE
06400			 'C'SAVES OLD AND NEW FORMS, I.E. "COPIES" ITEM.
06500			 'C' N  SAVES & MOVES TO ITEM N.
06600			 'DEL'  DELETES ITEM AND MOVES ON TO NEXT
06700	
06800	HOMING	**** SET P13=1 TO HOME IN ON ANY NEARBY NOTE ON SAME STAFF.
06900			(P13 RESETS SELF TO 0)
07000	
07100	
07200	GROUP EDIT COMMANDS - - - - - - - 
07300	
07400	'MOVE' OR 'M' <CR>:  TO MOVE GROUPS OF ITEMS
07500	
07600	 YOU WILL ASKED TO TYPE: STAFF NUM, POS1, POS2, (CODE NUM)
07700	    TO SHRINK OR EXPAND ALL STAVES GIVE A STAFF NUM > 10.
07800	     IF NO CODE NUM IS GIVEN ALL ITEMS IN THE AREA WILL BE MOVED.
07900	
08000	     IF 'L' IS GIVEN AS STAFF NUM, THE AREA TO BE MOVED MUST
08100	     BE INDICATED WITH THE LIGHT PEN.
08200	
08300	          ----- 'ASK' FEATURE ------
08400	        IF 100 IS ADDED TO THE CODE NUM, YOU WILL BE ASKED IF YOU
08500	   WANT TO MOVE EACH ITEM INDIVIDUALLY.  'X' WILL EXIT FROM 'MOVE'.
08600	
08700	     TYPE '99' AT ANY TIME TO BACKUP WHEN IN 'MOVE', 'COPY', ETC.
08800	
08900	
09000	'COPY' OR 'C' <CR>:  TO COPY GROUPS OF ITEMS.
09100	
09200		WORKS SAME AS 'MOVE' BUT ORGINAL IS LEFT BEHIND.
09300	
09400	'DELETE' OR 'DE' <CR>:  TO DELETE GROUPS OF ITEMS.
09500	
09600		SAME STRUCTURE AS 'MOVE'.
09700	
09800		  99 0 0 N  WILL DELETE ALL LINES EXCEPT! LINE 'N'. 
09900		     USE 10 FOR STAFF 0.
10000		******** USE WITH GREAT CARE!! *********
10100	
10200	'ALTER' OR 'A' <CR>:  TO ALTER GROUPS OF ITEMS.
10300	
10400		FIRST PART IS SAME AS 'MOVE'.  AFTER THE AREA HAS BEEN
10500		DESIGNATED YOU WILL BE ASKED TO SPECIFY PARAMETER CHANGES
10600		WITH PAIRS OF NUMBERS -- Pn, Change, Pn, Change, etc.
10700	
10800		IF THE FIRST NUMBER GIVEN IS 12 AND YOU HAVE ALREADY
10900		SPECIFIED CODE NUM 1, ALL NOTE STEMS, BEAMS AND SLURS
11000		IN THE GIVEN AREA WILL BE INVERTED.
11100	'DP' N1, N2, . . . . .: COVERS OR UNCOVERS PARTS OF DISPLAY
11200	
11300	'J'  WILL AUTOMATICALLY JUSTIFY LINES, ALLOWING PROPER SPACES FOR
11400	       FOR MOST ACCIDENTALS, CLEFS, ETC.  A STAFF NUM >5 WILL JUSTIFY
11500	       ALL LINES AS A UNIT.  IF POS2 = 0, IT WILL BE TAKEN AS 200.
11600		****NOTE: WHILE YOU CAN START FROM ANY HORIZANTAL POSITION 
11700		(POS1), THE END POINT MUST BE ≥ THE POSITION OF THE LAST ITEM
11800		ON THE LINE.
11900	
12000	************************************************************************
12100	
     

00100	--------  SECTION IV  ---------
00200	
00300	  'SCORE' ITEMS: NOTES-- 14, 0, STAFF
00400	
00500		144 (INSTEAD OF 14)WILL READ EDIT FILE. SEE BELOW FOR FILE
00600		FORMAT.  THE PROGRAM WILL ASK FOR STAFF NUMBER AND FILE NAME.
00700	
00800	      ---- IF P2 IS NEG. (I.E. '14 -1 2' OR '144 -1'), STAFF 4 WILL
00900		   BE SET UP AUTOMATICALLY BY THE FIRST STAFF ENTERED.
01000		      --- SEE BELOW ABOUT THE USE OF STAFF 4. ---
01100	
01200	****  HOW TO USE "SCORE" ITEMS  ****
01300	
01400		 NOTES ARE TYPED IN ALMOST EXACTLY AS IN THE "SCORE" PROGRAM.
01500	  I.E. S=#, F=b, N=NATURAL (bb AND ## ARE NOT AVAILABLE YET.)
01600	  OCTAVE NUMBERS MUST BE USED.  'P' (FOR PROXIMITY MODE) MAY
01700	  BE USED.  'O' RETURNS TO ORDINARY MODE.
01800	
01900		  TREBLE CLEF IS ASSUMED.  TO ENTER A CLEF, TYPE CLEF NAME 
02000	  FOLLOWED BY A SLASH. (TR/  BA/  AL/  TEN/)   PRECEDED  THE  CLEF
02100	  NAME BY A MINUS SIGN (-BA/) TO HAVE THE AFFECT OF A CLEF WITHOUT
02200	  THE CLEF ACTUALLY APPEARING. (IF NO CLEF IS GIVEN IT WILL ALWAYS
02300	  BE TREBLE CLEF POSITION.)
02400	  USE 'M' (FOR MEASURE) TO ENTER A BAR LINE.
02500	  FOR KEY SIGS TYPE 'KNA' WHERE N=NUMBER OF ACCIDENTALS AND
02600			A='S' OR + FOR SHARPS, OR - OR 'F' FOR FLATS.
02700	
02800	  NO MORE THAN 72 CHARACTERS MAY APPEAR
02900	  ON ONE LINE OF INPUT. (BUT MORE THAN ONE LINE MAY BE USED.)
03000	  THE LINE MUST END WITH A SEMICOLON OR, IF NO MORE NOTES ARE
03100	  TO APPEAR, WITH '*'.
03200	
03300		THE MOTIVIC FEATURES OF "SCORE" MAY BE USED (BUT WITH
03400	  NO "NESTING").  MOTIVES ARE SAVED WITH DISPLAY DATA
03500	  AND CAN BE REUSED WHEN WORKING LATER.  
03600	  (NO MORE THAN 200 ITEMS CAN BE SAVED IN ANY  LIST OF MOTIVES.)
03700	
03800	  CHORDS ARE CONSTRUCTED BY USING THE COLON WITH  NOTES.
03900	  THE COLON CAUSES THE NOTE TO OCCUPY THE SAME RHYTHMIC POSITION
04000	  AS THE LAST NOTE TO APPEAR WITHOUT A COLON.  THE STEM DIRECTION IN
04100	  CHORDS WILL BE DETERMINED BY THE ORDER OF APPEARANCE OF THE NOTES.
04200	  IF THE FIRST NOTE IS THE LOWEST, THE STEM GOES UP; IF THE FIRST IS
04300	  THE HIGHEST, THE STEM GOES DOWN.  POSITIONING OF NOTES ON PROPER
04400	  SIDE OF STEM AND (IN MOST CASES) SPACING OF ACCIDENTALS AND DOTS
04500	  IS AUTOMATIC.  GRACE NOTES MAY BE USED -- SEE UNDER RHYTHM BELOW.
04600	
04700	   EX.  M/BASS/ K4F /12 8 /C3/EF/E/ M /D X 3/EN2/GS:/B:/M*
04800	
04900	    A BAR LINE COMES FIRST, THEN BASS CLEF.
05000	    NEXT IS A 4 FLAT KEY SIGNATURE, FOLLOWED BY 12/8 TIME.
05100	    THE 3RD NOTE WILL BE AN 'E' WITH NO ACCIDENTAL.
05200	    A BAR LINE WILL PRECEED THE THREE Ds.
05300	    THE LAST 3 NOTES WILL BE AN E MAJOR CHORD.
05400	    ENDS WITH A BAR LINE.
05500		(In the example above the spaces on either side of the
05600		slashes are optional [to help proof reading].  The other
05700	    	spaces, i.e. in "12 8" and in "D X 3" are required.)
05800	
05900		AFTER THE LAST NOTE HAS BEEN ENTERED THE PROGRAM WILL 
06000	  ASK FOR 'POS1, POS2'.
06100	  THE NOTES WILL BE EVENLY SPACED BETWEEN THE 2 POSITIONS ENTERED.
06200	  (<CR>=0,200)  NEXT YOU WILL BE ASKED TO 'TYPE RHYTHM'.
06300	  '99' WILL BACK UP, '999' WILL ESCAPE FROM "SCORE" MODE.
06400	
06500	   A rhythmic duration must be given for each note, rest or 
06600	   chord previously entered. (Clefs, bar lines, etc. should
06700	   ignored.)
06800	
06900	FOLLOW THE SAME RULES AS IN "SCORE".  THE SINGLE DOTTED DUPLE RHYTHMS
07000	WILL AUTOMATICALLY PUT DOTS ON NOTES.  MORE COMPLEX RHYTHMS  MUST  BE
07100	DOTTED INDIVIDUALLY.  (THEY WILL BE CORRECTLY SPACED.)
07200	
07300	   4 16TH NOTES, A QUARTER, A DOTTED 8TH, 16TH, HALF,
07400	   3 TRIPLETS, AND A WHOLE NOTE FOLLOW:
07500	
07600		16////4/8./16/2/12///1*
07700	
07800		***** NOTE THAT CHORDS WITH WHOLE NOTE RHYTHM WILL APPEAR
07900		      WITH A STEM.  THE STEM IS NEEDED TO INSURE PROPER
08000		      PLACEMENT OF NOTES A SECOND APART.  YOU!! MUST
08100		      REMOVE SUCH STEMS AFTER THE LINE IS COMPLETE!! *****
08200	
08300		**** FOR GRACE NOTES, TYPE RHYTHMIC VALUE OF 88.
08400	
08500	
08600	     NEXT YOU WILL BE ASKED 'ADD BEAMS?'  TYPE 'Y' OR 'N'. TO THIS.
08700	        '99' WILL BACK UP, '999' WILL ERASE INPUT AND 
08800	        LEAVE "SCORE" MODE.
08900	        'G' (FOR GO) WILL OMIT ALL FURTHER PROMPTS IN THIS MODE.
09000	
09100	IF BEAMS ARE ADDED, GIVE THE NOTE NUMBERS  FOR  THE  FIRST  AND  LAST
09200	NOTES  UNDER  THE  BEAMS.  IF THE SECOND NUMBER IS NEGATIVE THE STEMS
09300	FOR THE GROUP WILL GO DOWNWARD.
09400	WHEN COUNTING NOTES, IGNORE RESTS, CLEFS ETC.  CHORDS COUNT AS 
09500	ONE NOTE.
09600	
09700		IF YOU HAVE 4 16TH NOTES (STEMS UP) FOLLOWED BY 2 QUARTERS
09800	 AND  2 8THS (STEMS DOWN) TYPE:
09900	
10000		1,4 / 5, -6 *
10100	
10200	  SOME PARTIAL BEAMS MAY HAVE TO BE ADDED INDIVIDUALLY AS YET.
10300	
10400		THE NEXT REQUEST IS 'ADD MARKS?' TYPE 'Y', 'N',  99  OR  999.
10500	IF 'YES' GIVE NOTE NUMBERS AND MARK NAMES OR NUMBERS AS NEEDED.  WHEN
10600	COUNTING NOTES, IGNORE RESTS, CLEFS ETC.  CHORDS  COUNT  AS  1  NOTE.
10700	THE   NUMBER   FOR  THE  ACCENTS,  ETC.  ARE  4=∧(WEDGE),5=>(ACCENT),
10800	6=FERMATA,   7=DOT,   9=TENUTO(DASH),   11=DOWN   BOW,   12=UP   BOW,
10900	13=HARMONIC, 14=+, ETC.(SEE CODE 6.  UP TO 2 MARKS MAY BE ENTERED FOR
11000	EACH NOTE -- BUT EACH MARK MUST BE ENTERED SEPARATELY  WITH  ITS NOTE
11100	NUMBER.	 THE MARK NUMBERS ARE THE SAME AS THOSE FOR P5 WITH CODE# 6.)
11200	
11300		EXAMPLE:  1,5 / 6,5 / 7,9 / 10,7 / 10,9*
11400		  - OR - 1 ACC/6 ACC/7 TEN/10 STAC/10 TEN*
11500	
11600	
11700	    LASTLY YOU WILL BE ASKED 'ADD SLURS?'  
11800	    TYPE 'Y' OR 'N'. TO THIS.
11900	
12000	IF SLURS ARE ADDED, THE ORDER NUMBERS OF THE NOTES AT  THE  BEGINNING
12100	AND  END OF THE SLUR MUST BE GIVEN.  IF THE SECOND NUMBER IS NEGATIVE
12200	THE 'DIP' WILL BE DOWNWARD AND THE STEMS WILL GO UP.  VICE-VERSA  FOR
12300	A POSITIVE SECOND NUMBER.
12400	
12500		THE AMOUNT OF CURVE WILL DEPEND ON THE CONFIGURATION  OF  THE
12600	NOTES  BETWEEN  THE END POINTS.  IN EXTREME SITUATIONS IT IS PROBABLE
12700	THAT THE RESULT OF THIS AUTOMATIC PROCEDURE WILL HAVE TO BE EDITED.
12800	
12900		A TYPICAL EXAMPLE OF INPUT:   2,-3/ 2,-7/ 8,11*
13000	
13100			THIS WILL PUT SLURS FROM 2ND TO 3RD NOTE, 2ND TO 7TH
13200			AND 8TH TO 11TH.
13300	
13400	TO  SLUR  INTO THE 1ST NOTE, TYPE -1,1/ OR -1, -1/.  TO SLUR OUT FROM
13500	THE LAST NOTE, TYPE N,99* OR N,-99* WHERE N=NUMBER OF LAST NOTE.
13600	
13700		THE 'SLUR' SECTION MAY ALSO BE USED TO INVERT ANY STEMS  FROM
13800	THEIR  NATURAL  DIRECTIONS  OR FROM THE DIRECTIONS TO WHICH THEY HAVE
13900	BEEN TURNED BY THE 'DIP' OF THE ENTERED SLURS.  TO DO THIS SIMPLY ADD
14000	100  TO  THE FIRST NOTE NUMBER OF A PAIR.  IF 2ND NUMBER IS PLUS, THE
14100	STEMS GO UP; IF 2ND NUMBER IS NEGATIVE, STEMS  GO  DOWN.   THIS  WILL
14200	ONLY  INVERT  THE  STEMS  OF  THE NOTES INVOLVED; ANY SLURS INVOLVING
14300	THESE NOTES SHOULD BE ENTERED WITH PAIRS OF NUMBERS PREVIOUS  TO  THE
14400	PAIRS WHICH WILL INVERT THE STEMS.
14500	  ***** NOTE THAT TIES BETWEEN THE INNER NOTES OF TWO CHORDS CANNOT
14600		BE DONE AUTOMATICALLY AS YET.
14700	
14800	
14900	∞∞∞∞∞ FOR 'BEAMS', 'MARKS' AND 'SLURS' A 2ND LINE OF INPUT MAY BE
15000		GIVEN IF THE 1ST LINE ENDS WITH ';' INSTEAD OF '*'.
15100	
15200		ALL ITEMS ENTERED UNDER '14' MAY BE EDITED LATER AS IF THEY
15300	  WERE ENTERED INDIVIDUALLY.
15400	
15500	FOR CODE # 144:  FOLLOWING IS THE FILE FORMAT FOR "SCORE" INPUT FROM
15600	   AN EXTERNALLY EDITED FILE.  THE NAME OF THE FILE CAN HAVE NO MORE
15700	   THAN FIVE LETTERS.
15800	
15900		00100   (NOTES) . . . *
16000		00200   (RHYTHM) . . . *
16100		00300   (BEAMS) . . * A BLANK LINE = NO BEAMS
16200		00400   (ACCENTS) . . *  BLANK LINE = NO MARKS
16300		00500   (SLURS) . . *  BLANK LINE = NO SLURS
16400	
16500		(2ND LINES MAY BE ADDED WITH ALL ITEMS EXCEPT RHYTHM.)
16600	
16700	    THIS SEQUENCE MAY BE REPEATED UP TO 7 TIMES.  THE PROGRAM WILL
16800	    ASK FOR EACH OF THE STAFF NUMBERS.
16900	
17000	
     

00100	---------  SECTION V  -----------
00200	
00300	********* TO SET UP AUTOMATIC IRREGULAR RHYTHMIC SPACING *******
00400			  --- STAFF 4 ---
00500	
00600		ANY  NOTES WHICH APPEAR ON STAFF 4 WILL CAUSE ALL ITEMS LATER
00700	ENTERED WITH '14' OR '144' TO BE  SPACED  ACCORDING  TO  THE  SPACING
00800	GIVEN  ON  STAFF 4.  FOR STAFF 4 DO NOT USE ANY RESTS AND RHYTHMS MAY
00900	NOT BE INDICATED BY HORIZANTAL BEAMS.   SINGLY DOTTED  NOTES  MAY  BE
01000	USED BUT ONLY DUPLE DIVISIONS ARE TO BE USED.
01100		(I.E. NO TRIPLETS OR DOUBLE DOTS, ETC.  NOTE HOWEVER THAT
01200		 ANY! RHYTHMIC UNITS MAY BE USED IF THEY ARE PUT ON STAFF 4
01300		 BY THE AUTOMATIC PROCEDURE WHEREIN YOU TYPE EITHER 14 -1 STFn
01400		 OR 144 -1.  IF STAFF 4 IS BLANK, SETTING P2 NEGATIVE WILL
01500		 CAUSE A DUPLICATE OF THE FIRST LINE YOU ENTER TO APPEAR ON
01600		 STAFF 4.  IT WILL BE SPACED ACCORDING TO THE RHYTHM AND
01700		 WHATEVER ADJUSTMENTS ARE NEEDED FOR CLEFS, ETC.  ALL FURTHER
01800		 LINES ENTERED WILL CONFORM TO THIS SPACING UNLESS STAFF 4 IS
01900		 DELETED.)
02000	
02100	AFTER ALL OTHER NOTES ARE PLACED TO SATISFACTION ERASE ALL OF STAFF 4
02200	BY TYPING '99 0 4'.
02300	
02400	IN GENERAL, IT IS PROBABLY BETTER TO USE MANY SMALL VALUES ON 
02500	STAFF 4.  THIS WAY IT IS EASIER TO MAKE MANY DELICATE ADJUSTMENTS.
02600	
02700	
02800	*******   MSSAUX  ********
02900	
03000		THIS IS A PROGRAM TO EXTRACT PARTS  FROM  PREVIOUSLY  CREATED
03100	SCORES OR TO PACK SEVERAL MSS.DAT FILES INTO ONE FOR EASIER STORAGE.
03200	
03300	THE  PROGRAM  WILL  ASK  "PARTS, PACK OR UNPACK?" A FULL WORD MUST BE
03400	GIVEN IN REPLY.  WHEN ASKED FOR OUTPUT FILE NAMES BE  SURE  THAT  ANY
03500	NAME GIVEN IS NOT!! ALREADY IN USE.
03600	
03700	---- PARTS ----
03800	
03900		WHEN  ASKED "TYPE TOP STAFF #", GIVE THE HIGHEST STAFF NUMBER
04000	YOU WANT USED FOR THIS SECTION OF THE PART INVOLVED.  IF YOU TYPE "2"
04100	THE LINES 2, 1, 0, ETC. WILL BE USED UNTIL BUFFER SPACE IS EXHAUSTED.
04200	
04300		WHEN  REPLYING  TO "READ WHICH STAFF #?" THREE NUMBERS MAY BE
04400	TYPED.  THE FIRST WILL BE THE STAFF NUMBER OF  THAT  SECTION  OF  THE
04500	ORIGINAL  SCORE TO BE READ, THE SECOND WILL BE A TRANSPOSITION NUMBER
04600	(BY NOTE STEPS -- NOT! 1/2 STEPS) AND IF THE THIRD NUMBER IS  GREATER
04700	THAN  ZERO  THIS QUESTION WILL NOT BE ASKED AGAIN AS SUCCESSIVE FILES
04800	ARE READ IN.
04900	
05000	THE  MESSAGE  "NO  ROOM  FOR THIS ONE" MEANS THE BUFFER DOES NOT HAVE
05100	ROOM LEFT  FOR  ANOTHER  COMPLETE  LINE.   THIS  LAST  LINE  WILL  BE
05200	COMPLETELY IGNORED.  THEN YOU MUST START ANOTHER FILE.
05300	
05400	TRANSPOSITIONS FOR "Bb" INSTRUMENTS  AND  FOR  "F"  INSTRUMENTS  WILL
05500	AUTOMATICALLY FIX MOST OF THE NEEDED CHANGES IN ACCIDENTALS.  HOWEVER
05600	THERE ARE MANY CASES WHERE WRONG RESULTS MIGHT OCCUR  (SUCH  AS  WITH
05700	NOTES  TIED  OVER  BAR  LINES,  ETC.)  SO  CAREFUL  PROOF  READING IS
05800	ESSENTIAL.
05900	
06000	---- PACK AND UNPACK ----
06100	
06200	FOLLOW THE PROMPTS.
     

00100	INDEX TO SUBROUTINES:
00200	
00300	    FILE NAME:
00400		MSS
00500		NOTWRT
00600		ITMSBX	ITMSUB
00700			BMS
00800			METER
00900			RNOTE
01000	
01200		PLTSRT	RHORZ
01300			SLUR
01400			JUGGLE
01500			LOOP
01600			PLTSRT
01700			BOX
01800			LINES
01900			RDRAW
02000	
02100		HOMER	HOMER
02200			PLACE
02300			FINDIT
02400			IABS
02500			BLOCK DATA
02600	
02700		MOVER	MOVER
02800			RTLINE
02900			EXTEN
03000			MVBEAM
03100			MVBX
03200	
03300		KSSAV	SAVIT
03400			LISTP
03500			FIXUP
03600			KSIG
03700	
03800		GRED	VLINE
03900			ASKIT
04000			GRED
04100			LPEN
04200			DELETE
04300			DPYNEW
04400			PLTCMD
04500	
04600		NOIR	NOIR
04700			NUMB
04800	
04850		TREST	ALPHA
04900			TAIL
05000			REST
05100			RDDATA
05200			BREP
05300			FERMTA
05400			SORT2
05500	
05600		CLFZ	CLEFS
05700			JDRAW
05800			CENTER
05900			LINX
06000	
06100		MSFILL	OLDFIL
06200			NNN
06300			UNPACK
06400			ROFF
06500	
06600		SCANR	SCANR
06700			NALF
06800			EDIT
06900	
07000		SCX	SCMSS
07100			TYPE
07200	
07300		SETLET	SETLET
07400			SETNUM
07500	
07600		SCRHYX	RHYTH
07700			SETUP
07800			MARKS
07900			DOTS
08000	
08100		NOTBMX	NOTES
08200			BMX
08300	
08400		BEAMS	BEAMS
08500			XNOTE
08600	
08700		ACSHFT
08800	
08900		FILLER	FILLER
09000			HGHT
09100			MISS
09200			HALF
09300	
09400		FILLMS	FILLMS
09500			ROTATE
     

00100	
00200	*****  MSS.CMD  *****  (SMALLEST EDITOR.  NO SCORE OR TEXT ITEMS.)
00300	MSS,MOVER,GRED,NOTWRT,HOMER,ITMSBX,CLFZ,MSFILL,KSSAV
00400	,TREST,NOIR,PLTSRT,SCANR,LOOK	
00500	,CURSOR.REL[LCS,MUS]
00600	
00700	
00800	*****  MSSDD ****** (AS ABOVE - FOR DATA-DISK)
00900	MSS,MOVER,GRED,NOTWRT,HOMER,ITMSBX,CLFZ,MSFILL,KSSAV
01000	,TREST,NOIR,PLTSRT,SCANR,LOOK,ACSHFT
01100	,CURSOR.REL[LCS,MUS],TVRLIB[LCS,MUS]
01200	
01300	
01400	****** DDTMSS  *******
01500	%D MSS,MOVER,GRED,NOTWRT,HOMER,ITMSBX,CLFZ,MSFILL,KSSAV
01600	,SETLET,TREST,NOIR,PLTSRT,SCX,SCANR,LOOK,ACSHFT	
01700	,NOTBMX,BEAMS,SCRHYX,CURSOR.REL[MUS,LCS]
01800	
01900		
02000	******   MXX  ******  (SAME AS ABOVE  - SANS DDT.)
02100	 MSS,MOVER,GRED,NOTWRT,HOMER,ITMSBX,CLFZ,MSFILL,KSSAV
02200	,SETLET,TREST,NOIR,PLTSRT,SCX,SCANR,LOOK,ACSHFT
02300	,NOTBMX,BEAMS,SCRHYX,CURSOR.REL[LCS,MUS]
02400	
02500	
02600	***** PRNTX ******   (PREPARES FILE FOR 'PLOTIT.F4')
02700	LOA MDSK←/DUMP MPRNT,NOTWRT,ITMSBX,CLFZ,PPSRT,TREST,LOOK,PLTCMX,PLTIT↔
02800	
02900	
03000	****** PRNT ****** (SMALLEST DIRECT PRINT.  NO EDITING.)
03100	LOA MP←/DUMP MPRNT,NOTWRT,ITMSBX,CLFZ,PPSRT,TREST,LOOK,PLTCMD↔
03200	
03300	
03400	******  DOMSS  ******* (MAIN 'DO' FILE)
03500	LOA MM←/DUMP @DDTMSS[1,LCS]↔
03600	
03700	
03800	
03900	****** DOMS.DO ******(TO GET NECESSARY BASIC DATA READ IN BEFORE DUMP.)
04000	LOA MM←/DUMP @DDTMSS[1,LCS]↔AL Y↔S↔G↔INIT↔βAL↔SA MM↔